package com.example.mqtt.config;

/**
 * @author qwert
 * @version 1.0.0
 * @create 2025/4/21 21:42
 **/
import com.example.mqtt.entity.QueueInfo;
import org.springframework.stereotype.Component;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

@Component
public class MessageStorage {

    // 线程安全的全局 Map，Key: 用户ID，Value: 用户手机号
    private final Map<String, Object> queueMap = new ConcurrentHashMap<>();

    /**
     * 存储用户信息
     */
    public void storeQueue(String cardId, QueueInfo queueInfo) {
        queueMap.put(cardId, queueInfo);
    }

    /**
     * 获取所有用户信息
     */
    public Map<String, Object> getQueues() {
        return new ConcurrentHashMap<>(queueMap); // 返回副本避免外部修改
    }

    /**
     * 清空存储（按需使用）
     */
    public void clear() {
        queueMap.clear();
    }
}
